System and method for information transfer over a network

ABSTRACT

An interface device for connecting to and retrieving data from a remote computer system, and method of compressing, decompressing and transferring data therefor. A user may set transfer constraints on the interface device. The interface device may be a web browser. The user selecting a web site requests data, normally image data from a remote computer system. The interface device includes a cache memory where generic objects may be stored. Each generic object corresponds to an original object in the requested data. Depending on the data transfer constraints, instead of retrieving the entire image, e.g., web page image, unaltered from the host system, a compact generic image is retrieved, initially, wherein generic objects are substituted for each corresponding original object. A pseudo-image is displayed, with the generic objects substituted for corresponding original objects. Subsequently received original objects may be substituted for generic objects as each original object is received.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is related to transferring remotely stored dataacross a network and, more particularly, to transferring objects acrossa network to a local computer from a remotely connected computer anddisplaying the transferred data.

2. Background Description

Computers running software referred to as web browsers for connecting toa remote computer system, retrieving the contents of a database on theremote system and visually displaying the retrieved data on a localclient system, are well known in the art. Typically, images arerequested by a web browser user on a client computer system. The remotesystem receiving the request, retrieves the images from the database andtransmits the images across what is commonly referred to as the internetor world wide web (www). The apparent speed of the transfer is directlyproportional to the amount of data that must be transferred.Accordingly, to improve apparent transfer speed, reduce the amount oftime that the user must wait for the transfer and to minimize webtraffic congestion, data reduction or compression methods are constantlybeing sought.

Thus, there are various well known data reduction standards such asthose referred to as JPEG, TIFF and GIF for images, MPEG for movies andRP3 for sound. However, even employing these well known standards,transferring data required to present a relatively simple image maycause a significant delay, thereby resulting in inactive or dead time atthe client system. Accordingly, there is a need for data compressionmethods for improving internet image transfers.

SUMMARY OF THE INVENTION

It is a purpose of the invention to decrease net workload;

It is another purpose of the present invention to decrease apparent timerequired to pass information over a network;

It is yet another purpose of the present invention to decrease apparenttime to load web pages while still maintaining page aesthetics;

It is yet another purpose of the present invention to off-load serverstorage of information.

The present invention is an interface device for connecting to andretrieving data from a remote computer system, and a method ofcompressing, decompressing and transferring data therefor. A user mayset transfer constraints on the interface device. The interface devicemay be a web browser. The user selecting a web site requests data, oftenimage data from a remote computer system. The interface device includesa cache memory where generic objects may be stored. Each generic objectcorresponds to an original object in the requested data. Depending onthe data transfer constraints, instead of retrieving the entire image,e.g., web page image, unaltered from the host system, a skeletal imageis retrieved, initially, wherein generic objects are substituted foreach corresponding original object. A pseudo-image is displayed, withthe generic objects substituted for corresponding original objects.Subsequently received original objects may be substituted for genericobjects as each original object is received.

Additionally, as selected, a web page is displayed using generic codespreviously cached in prior downloads. Thus, the generic codedinformation is made ready, but is not played or displayed until a linkto the web page is selected. Upon link selection, the information ispresented so that user observes it while waiting for the new page to bedownloaded to the browser. This enhances web browser operation bycausing the performance of useful or pleasing audio or images for theuser during the wait period, that typically occurs between linkselection and viewing, i.e., during downloading. The downloaded imagemay be a hypertext document represented by text or images. The codes mayinclude wave files or other sound files such as rp3 files. Thus, genericcodes for music, advertisements, copyright information, and the like maybe included.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects and advantages will be betterunderstood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

FIG. 1 is a flow diagram of the preferred embodiment system for sending,receiving and displaying Code over the internet.

FIG. 2 shows normal browsing of a web site according to the preferredembodiment of the present invention.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION

As used herein, Information refers to images, audio, animations, 2-D and3-D graphics, and other data transferred over a network; GenericInformation refers to common or standard Information that usuallyresides on both a client system and a remote system; Code refers totext, numbers, or other compact identifiers for Generic Information.Further, Generic Information may be stored in a database on a compactdisk (CD), digital versatile disk (DVD), a hard-disk, a company serveror, an internet service provider (ISP) hub.

Generic Information may include sketches, clip art images, cartoons,commonly used images (e.g. forests, animals . . . ), melodic sequences,3-D graphics for virtual reality environments, tactile information forvirtual reality environments, wave files, etc. A Generic Informationdatabase is a library of numerous useful images and sound waveforms thatmight be supplied for example when a user purchases something on-line ordownloads web pages on a web-browser.

Referring now to the drawings and, more particularly, FIG. 1 is a flowdiagram of the preferred embodiment system for sending, receiving anddisplaying Code over the internet. Accordingly, in step 100, a userconnects to a remote web site and begins browsing remote Informationusing a client web browser. Constraints may be placed on the webconnection session by the user, the ISP, the remotely connected host, orinternet related variables.

Accordingly, in step 102 the user may direct the client system toestimate network congestion by pinging the remote host on which theInformation resides. Alternatively, the client web browser may generatean estimate concerning remote information access, generated by analyzingthe user's past access times to the same remote host or, by consideringother relevant parameters such as time of day or remote host's countryof origin.

In parallel with the traffic estimation step 102, the browser or otherrelated software is checked to determine whether the user has placed theclient browser in quick mode in step 104. In quick mode, the browser isto present only Generic Information, making detailed informationsuperfluous. Alternately, in step 106, the client may have been placedin quick mode by the ISP or, for example, by parental control software;or, the remote host server may limit transfers to sending Code, so as toreduce demand on the server.

It should be noted at the outset that, in step 100, the user may specifyan importance level of Information to be requested. In this case, instep 108, the client system determines “importance” of the codedinformation. If the importance level is high, then, in step 110, thehost server sends larger specific Information rather than GenericInformation. Importance may determined by the user, the client, the ISP,the provider of the remote host Information, or determined by algorithmon the client system. For example, importance may be based on criteriasuch as the number of times the information has been accessed in thepast, the subject matter type, specific instructions provided by webbrowser users or, latent semantic indexing.

If the importance of the requested Information is determined, aspreviously described, in step 108 to be high; or, based on the trafficestimation results in step 102, if network traffic is not congested instep 112; or, in step 114, it is determined that the user has notselected quick mode; or, in step 116, it is determined that the ISP ornetwork conditions have not placed the browser in quick mode; then, instep 110, the browser presents the web page normally. If, however,network traffic is congested in step 112; or, the browser or server isin quick mode in steps 114 or 116, respectively; then, in step 118, atransfer is initiated for the Code for Generic Information rather thanthe larger more specific web site specific Information.

In step 120, the remote host server returns the more compact Code toclient. The Generic Information specified by the Code may include objectspecific characteristics such as color as well as a particular object'slocation or a location relative to other Generic Information. Along withCode for the current web site image, in step 122, the client receivesGeneric Information Codes corresponding to related images, e.g., webpages linked to the current web page.

As the Code is received by the client, in step 124, the client systemchecks to determine whether the Code and any accompanying Informationalready exist in any local client database. Optionally, if the Code andGeneric Information does not exist locally, then, in step 126, theclient requests that server send Generic Information and Code to theclient for current and future use. At the user's option, this step 126may be ignored. Finally, in step 128, the client web browser presentsthe Generic Information (associated with Code) to the user.

The flow diagram of FIG. 2 shows normal browsing of a web site accordingto the preferred embodiment of the present invention. Once the currentweb page is loaded by the browser, in step 130, the user browses thedisplayed Information. Next, in step 132, while the current web page isbrowsed, the remote host server sends next page Codes, which are cachedat the browser. Information corresponding to the concurrently receivedCode is not displayed nor otherwise performed at the browser, but merelycached for subsequent use. Then, in step 134, the user selects anotherlinked page for browsing. As the host server is transmitting data forthe selected web page, Generic Information corresponding to thepreviously cached Code may be displayed or performed in Step 136.

Thus, the Coded Information is played or displayed while waiting for thenext page. Thus, the web browser operation is enhanced by providingpleasing audio, images or other Information, which the user observesduring the normally dead period between linking to the web site anddownloading all of the hypertext document as represented by text orimages on the current web page. The Codes may be, for example, code formusic, advertisements, copyright information, and the like. Othergeneric objects may include trees, roots, houses, a kitchen, a wall in ahouse, the side of a house, hotel, city, street, the sky or the sea.

EXAMPLES

A user, attempting to browse a remote web page, enters the page's URLinto a web browser. The client system determines that the network isvery congested in step 102 and, rather than download actual images fromthe remote host, selectively downloads a Generic Code for a genericimage, which is subsequently displayed. So, in this example, whilespecific hyper text markup language (HTML)<img src=“dog.jpg”> mayspecify a full image of a particular dog, <img srccode=2817> may specifythe Code for a generic dog image, cached in a prior download or residingin the user's local database of Generic Information. The browser usesthese codes to lookup generic images in the user's database andsubstitutes these when the web page is displayed.

In another example, a first user wishes to send a digital photo ofhimself standing in front of a beautiful mountain range; an advertiserwishes to send a photo of a new car in front of a starry sky. Theseusers may specify a background scene using simple English, such as“mountains” or “starry sky.” These English words are the Codes forgeneric images. Using image processing software, these specificforeground images may be merged with the specified generic code tocreate the final scene.

In yet another example, at 4:00 pm, a user participating in avirtual-reality chat room has audio, visual and tactile feedback. Thechat room topic is kaleidoscopes. The user's system detects that exacttactile and audio components are unimportant to the chat. Additionally,it is the peak network traffic period, which causes receipt of a byteCode specifying Generic Information to be sent to the user. Responsiveto the byte code, generic muzak is played while the user is presentedwith a generic oscillating sensation.

Accordingly, the present invention is applicable to network transfers onsystems such as personal computers connected to an ISP server or anyremote computer. Also, the present invention is advantageous for smallercomputing devices where memory and display resources are a premium suchas embedded devices, personal digital assistants (PDA), a web phone, asmart wallet, a digital pen, a camera and the like.

While the invention has been described in terms of preferredembodiments, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims.

1-2. (canceled)
 3. A method as in claim 24, wherein image data isrequested by a user for display on a web browser, each substituted saidgeneric object being in a compressed web browser image, said methodfurther comprising: displaying said compressed web browser image.
 4. Amethod as in claim 3, wherein the remote computer system identifiesgeneric objects.
 5. A method as in claim 4, wherein while the compressedweb browser image is being displayed, the remote computer system istransferring generic object codes associated with related images. 6-7.(canceled)
 8. A method as in claim 25, wherein the data transferconstraints include a peak net traffic constraint, a client quick modeconstraint, a server quick mode constraint and an importance level.
 9. Amethod as in claim 8, wherein when said importance level is high, datais transferred from said database and the web browser image is displayednormally.
 10. A method as in claim 8, wherein when peak net traffic isbelow said peak net traffic constraint, data is transferred from saiddatabase and the web browser image is displayed normally.
 11. A methodas in claim 8, wherein when said client quick mode constraint is notselected, data is transferred from said database and the web browserimage is displayed normally.
 12. A method as in claim 8, wherein whensaid server quick mode constraint is not selected, data is transferredfrom said database and the web browser image is displayed normally. 13.A method as in claim 5, wherein while the web browser image is beingdisplayed, the remote computer system is further transferring additionalgeneric objects associated with said related images. 14-20. (canceled)21. A computer program product as in claim 26, further comprising:computer readable program code for transferring additional genericobjects associated with related images while the web browser image isbeing displayed.
 22. (canceled)
 23. A computer program product as inclaim 26, further comprising: computer readable program code fortransferring a requested object while said corresponding generic objectis being displayed and when said requested object is received replacingsaid corresponding generic object with each said requested object anddisplaying said each requested object.
 24. A method of transferring dataacross a computer network, said computer network including a pluralityof computers, a database stored on one of said plurality of computers,said method comprising the steps of: requesting transfer of data storedon a remote computer system, said stored data including image and sounddata; identifying at least one object included in said requested data asbeing associated with a generic object; and substituting a correspondingsaid generic object for each said associated at least one object.
 25. Amethod of transferring data across a computer network, said computernetwork including a plurality of computers, a database stored on one ofsaid plurality of computers, said method comprising the steps of:setting data transfer constraints; requesting transfer of data,including image and sound data, stored on a remote computer system;identifying at least one object included in said requested data as beingassociated with a generic object; substituting a corresponding saidgeneric object for each said at least one object in a web browser imageresponsive to said data transfer constraints; transferring genericobject codes associated with related images from said remote computersystem; displaying said web browser image while transferring, whereinwhen related images are displayed, generic objects associated with saidtransferred generic object codes are substituted in said displayedrelated images, wherein a requested object is transferred while acorresponding generic object is being displayed; and replacing anddisplaying each said corresponding generic object with each saidrequested object when said requested object is received.
 26. A computerprogram product for transferring data across a computer networkincluding a plurality of computers, a database stored on one of saidplurality of computers, said computer program product comprising acomputer usable medium having computer readable program code thereon,said computer readable program code comprising: computer readableprogram code means for setting data transfer constraints; computerreadable program code means for requesting transfer of data stored on aremote computer system; computer readable program code means foridentifying at least one object included in said requested data as beingassociated with a generic object; and computer readable program codemeans for substituting a corresponding generic object for each said atleast one object responsive to said data transfer constraints, whereinimage data is requested by a user for display on a web browser, saidgeneric object being substituted in a web browser image, said computerprogram product; and computer readable program code including a databasewith a plurality of generic objects.